package com.hjm.project.finance.AgentDeductionsKf.domain;

import com.hjm.framework.web.domain.BaseEntity;
import java.math.BigDecimal;

import com.hjm.framework.aspectj.lang.annotation.Excel;
import lombok.Data;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * 代理商还款明细对象 agent_deductions_kf
 *
 * @author maker-platform
 * @date 2022-10-26
 */
@Data
public class AgentDeductionsKf extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** pk_id */
    private Integer id;

    /** AGENT_DEDUCTIONS.id */
    @Excel(name = "扣款序号")

    private Integer adId;

    /** 扣款对象代理号 */
    @Excel(name = "扣款账户编号")
    private String agentNumK;

    /** 扣款账户名称 */
    @Excel(name = "扣款账户名称")
    private String agentNameK;

    /** 总扣款金额 */
    @Excel(name = "总扣款金额")
    private BigDecimal deductionMoneyAll;

    /** 扣款比例(AGENT_DEDUCTIONS配置的比例) */
    private String ratio;

    /** 目前剩余扣款金额 */
    @Excel(name = "剩余金额")
    private BigDecimal deductionMoneyBedo;

    /** 扣款金额 */
    @Excel(name = "当前扣款金额")
    private BigDecimal deductionMoney;

    /** 目前已扣款金额 */
    @Excel(name = "已扣金额")
    private BigDecimal deductionMoneyNow;

    /** 时间 */
    @Excel(name = "扣款日期")
    private String createDate;

    /** 扣款来源（agent_paid.settle_id） */
    @Excel(name = "扣款来源编号")
    private String settleIdK;

    /** 返款对象代理号 */
//    @Excel(name = "返款对象代理号")
    private String agentNumF;

    /** 返款去向（agent_paid.settle_id） */
    @Excel(name = "返款去向编号")
    private String settleIdF;

    /** 结算类型 */
    @Excel(name = "结算类型",readConverterExp = "26=机具尾款返现")
    private String profitType;

    /** 收款终端类型 */
    @Excel(name = "激活类型",readConverterExp = "1=未激活,2=伪激活")
    private Integer deductionType;

    /** 终端类型 */
    @Excel(name = "终端类型",readConverterExp = "0=传统终端,4=电签POS,5=GB传统,6=GB电签,7=GB电签二")
    private String posType;














    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("adId", getAdId())
            .append("agentNumK", getAgentNumK())
            .append("ratio", getRatio())
            .append("deductionMoney", getDeductionMoney())
            .append("deductionMoneyNow", getDeductionMoneyNow())
            .append("deductionMoneyAll", getDeductionMoneyAll())
            .append("settleIdK", getSettleIdK())
            .append("agentNumF", getAgentNumF())
            .append("settleIdF", getSettleIdF())
            .append("createDate", getCreateDate())
            .append("deductionMoneyBedo", getDeductionMoneyBedo())
            .toString();
    }
}
